2007-12-20 Richard Hult <richard@imendio.com>
* gdk/quartz/GdkQuartzWindow.c:
* gdk/quartz/GdkQuartzWindow.h: Make manual resizing smoother by
processing events after changing the size.
svn path=/trunk/; revision=19206
+2007-12-20 Richard Hult <richard@imendio.com>
+
+ * gdk/quartz/GdkQuartzWindow.c:
+ * gdk/quartz/GdkQuartzWindow.h: Make manual resizing smoother by
+ processing events after changing the size.
+
2007-12-20 Richard Hult <richard@imendio.com>
* modules/other/gail/gailwindow.c: (gail_window_get_mdi_zorder):
float dx, dy;
NSSize min_size;
- if (!inManualResize)
+ if (!inManualResize || inTrackManualResize)
return NO;
+ inTrackManualResize = YES;
+
currentLocation = [self convertBaseToScreen:[self mouseLocationOutsideOfEventStream]];
currentLocation.x -= initialResizeFrame.origin.x;
currentLocation.y -= initialResizeFrame.origin.y;
[self setFrame:newFrame display:YES];
+ /* Let the resizing be handled by GTK+. */
+ if (g_main_context_pending (NULL))
+ g_main_context_iteration (NULL, FALSE);
+
+ inTrackManualResize = NO;
+
return YES;
}
/* Manually triggered move/resize (not by the window manager) */
BOOL inManualMove;
BOOL inManualResize;
+ BOOL inTrackManualResize;
NSPoint initialMoveLocation;
NSPoint initialResizeLocation;
NSRect initialResizeFrame;